diff --git a/system/database/DB_result.php b/system/database/DB_result.php
index e747044..76093f9 100644
--- a/system/database/DB_result.php
+++ b/system/database/DB_result.php
@@ -251,8 +251,8 @@
 	/**
 	 * Query result.  Acts as a wrapper function for the following functions.
 	 *
-	 * @param	mixed
-	 * @param	string	can be "object" or "array"
+	 * @param	mixed	$n = 0
+	 * @param	string	$type = 'object'	'object' or 'array'
 	 * @return	mixed
 	 */
 	public function row($n = 0, $type = 'object')
@@ -281,6 +281,8 @@
 	/**
 	 * Assigns an item into a particular column slot
 	 *
+	 * @param	mixed	$key
+	 * @param	mixed	$value
 	 * @return	void
 	 */
 	public function set_row($key, $value = NULL)
@@ -311,6 +313,8 @@
 	/**
 	 * Returns a single result row - custom object version
 	 *
+	 * @param	int	$n
+	 * @param	string	$type
 	 * @return	object
 	 */
 	public function custom_row_object($n, $type)
@@ -335,6 +339,7 @@
 	/**
 	 * Returns a single result row - object version
 	 *
+	 * @param	int	$n = 0
 	 * @return	object
 	 */
 	public function row_object($n = 0)
@@ -358,6 +363,7 @@
 	/**
 	 * Returns a single result row - array version
 	 *
+	 * @param	int	$n = 0
 	 * @return	array
 	 */
 	public function row_array($n = 0)
@@ -381,7 +387,8 @@
 	/**
 	 * Returns the "first" row
 	 *
-	 * @return	object
+	 * @param	string	$type = 'object'
+	 * @return	mixed
 	 */
 	public function first_row($type = 'object')
 	{
@@ -394,7 +401,8 @@
 	/**
 	 * Returns the "last" row
 	 *
-	 * @return	object
+	 * @param	string	$type = 'object'
+	 * @return	mixed
 	 */
 	public function last_row($type = 'object')
 	{
@@ -407,7 +415,8 @@
 	/**
 	 * Returns the "next" row
 	 *
-	 * @return	object
+	 * @param	string	$type = 'object'
+	 * @return	mixed
 	 */
 	public function next_row($type = 'object')
 	{
@@ -430,7 +439,8 @@
 	/**
 	 * Returns the "previous" row
 	 *
-	 * @return	object
+	 * @param	string	$type = 'object'
+	 * @return	mixed
 	 */
 	public function previous_row($type = 'object')
 	{
@@ -452,8 +462,8 @@
 	/**
 	 * Returns an unbuffered row and move pointer to next row
 	 *
-	 * @param	string	'array', 'object' or a custom class name
-	 * @return	mixed	either a result object or array
+	 * @param	string	$type = 'object'	'array', 'object' or a custom class name
+	 * @return	mixed
 	 */
 	public function unbuffered_row($type = 'object')
 	{
